package org.taofuxn.framework.util;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;

import org.taofuxn.framework.database.dao.DaoMaster;
import org.taofuxn.framework.database.dao.DaoSession;

import java.util.Collection;


/**
 * Created by taofuxn on 2016/9/20.
 */
public class GreenDaoUtil {
    private DaoSession daoSession;
    private SQLiteDatabase db;
    private DaoMaster.DevOpenHelper helper;
    private DaoMaster daoMaster;
    private Context mContext;

    public GreenDaoUtil(Context mContext){
        this.mContext = mContext;
        setupDatabase();
    }
    private void setupDatabase() {
        //创建数据库
        // 注意：默认的 DaoMaster.DevOpenHelper 会在数据库升级时，删除所有的表，意味着这将导致数据的丢失。
        // 所以，在正式的项目中，你还应该做一层封装，来实现数据库的安全升级。
        helper = new DaoMaster.DevOpenHelper(mContext, "taofudao", null);
        //得到数据库连接对象
        db = helper.getWritableDatabase();
        //得到数据库管理者
        daoMaster =new DaoMaster(db);
        //得到daoSession，可以执行增删改查操作
        daoSession = daoMaster.newSession();
    }

    public DaoSession getDaoSession() {
        return daoSession;
    }

    public SQLiteDatabase getDb() {
        return db;
    }

    public void addEntity(Collection t){
            //面向对象添加表数据
            getDaoSession().insert(t);
    }
}
